#include "../header.h"
typedef struct  stu
{
    /* data */
    char name[16];
    int age;
}stu_t;

//1.标准IO 的一次读写实验
//2.打开文件 + 操作（读写） + 关闭文件
//3.普通文件-目录文件-字符设备文件-块设备文件-链接文件-管道文件-套接字文件

int main(int argc, char const *argv[])
{
    //数据准备好
    stu_t stu1 = {"zhangsan",20};
    
    //1.打开 - 操作系统会返回一个文件流指针
    FILE* fp = fopen("stu.dat","a+");
    if(fp == NULL)
    {
        perror("fopen error\n");
        return -1;
    }
    printf("fopen success\n");

    //2.写
    int len = fwrite(&stu1,sizeof(stu1),1,fp);
    printf("len = %d\n",len);
    //3.重新定位文件读写指针。
    fseek(fp,0,SEEK_SET);

    //4.读出来
    stu_t stun = {0};
    fread(&stun,sizeof(stun),1,fp);
    //5.显示出来
    printf("name:%s\nage:%d\n",stun.name,stun.age);
    //6.关闭文件
    fclose(fp);
    return 0;
}
